#ifndef PERSON_H
#define PERSON_H
#include<string>
#include<memory>
class Date;
class Address;
class Person {
    public:
        virtual std::string name() const = 0;
        virtual std::string birthDate() const = 0;
        virtual std::string address() const = 0;
        static std::shared_ptr<Person> create(const std::string& name,const Date& birthday,const Address& addr);

};
#endif